How do you test your Bash scripts? Good question, right? I found an xUnit framework for that: shunit2. It works like a charm on both Linux and macOS. I'm now planning to migrate a hundred tests in the yegor256/cam repository to this framework. Want to help? Jump in.
Update: I don't like it, because it doesn't isolate tests — while this is one of the most important principles of unit testing.
Update: I don't like it, because it doesn't isolate tests — while this is one of the most important principles of unit testing.
Earlier, I briefly mentioned bug driven development. Now, I've published a blog post about it, arguing that if all you have in your task tracker are bugs, your productivity might increase. No feature requests, no tasks, no questions. Just bug reports. Read on: Stop Asking and Suggesting—Just Complain.
Google Jules, recently announced by Google, is a prompt-based interactive code editing tool, very similar to Claude Code (love it!), but with a significant difference: it works on the server hosted by Google. This won't fly, if you ask me, because Jules doesn't have access to my machine, thus disconnecting me from the coding process. May work for monkeys vibe-coders though.
Just got this from Claude Code. The scary part is the "81% of devs auto-accepting." Most definitely the number will grow.
Опубликовали двухчасовое видео из наиболее интересных моментов первых восьми лекций курса SQM для студентов ВШЭ, который я читал в этом учебном году: на YouTube и VK (with English subtitles). Обсуждали, как обычно, способы оценки качества кода и его количества: lines of code, cyclomatic complexity, Halstead volume, coupling, cohesion, maintainability index. В этой выборке постарались оставить только те фрагменты, где обсуждалось что-то новое, по сравнению с тем, что уже было в прошлых видео курса SQM 2023 года.
Can someone help me answer this question? We are trying to cache the contents of the
/var/lib/docker
directory between GitHub workflow runs, in order to reduce the time of every build. ChatGPT says that it's not recommended, but possible. Maybe someone can create a GitHub plugin that would package the contents of the /var/lib/docker
into a TAR, somehow, and then unpack it later.Please open Telegram to view this post
VIEW IN TELEGRAM
We've already received 131 applications for KaiCode'25, our open-source festival. This year, the total prize pool is $4,096. You still have a few days to submit your project — the deadline has been extended to June 9. To win, your project must demonstrate development discipline. We don’t care about popularity or purpose — only how well the project is maintained. Submit your GitHub repository by filling out this form — participation is free.
P.S. Want to join the jury or become a sponsor? Just text me. (image by Sora)
P.S. Want to join the jury or become a sponsor? Just text me. (image by Sora)
I played a bit with Warp — it's like iTerm2 on AI steroids. You can give it traditional Bash commands, and plain English text. When it sees English, it tries to interpret it like Claude Code — but does a worse job . Feels a bit messy to me. I'm sticking with Bash + Claude for now.
Fifteen years ago, I had a dream that software systems could talk to people—and to each other—in isolated virtual environments (watch my talk at DevNexus 2016, in Atlanta, USA). I even submitted a patent application in 2010 for Netbout, a prototype of such an environment. But the key ingredient was missing at the time: the LLM. Now, the A2A protocol recently proposed by Google seems to offer something similar, and the dream may finally come true—AI will talk to AI, while we humans actively listen.
Text me if you want to hack Netbout and integrate A2A into it.
Text me if you want to hack Netbout and integrate A2A into it.
I start teaching a course about object-oriented programming to BSc students in Innopolis University: eight lectures, one lecture per week, every Wednesday, at 17:40 (Moscow time). Today is the first lecture. It starts in a few minutes. You are welcome to join if you missed it last year. The structure of lectures will be different this year — mostly live coding and discussions.
Who do you think is the fastest-growing consumer of electricity on this planet? Data centers. I was watching a talk by Prof. David Patterson—the inventor of RISC architecture—at Google I/O 2025. He mentioned a report from the IEA, which says that data centers consume 1.5% of the world’s total electricity. Notably, the report states that "electricity consumption by data centers in China could double by 2027." Where is it heading? (xAI datacenter on the photo)
Как и обещал, записали интервью с доктором исторических наук, Ириной Александровной Крайневой, создателем архива академика Ершова. Обсудили причины отставания отечественной информатики начиная еще с 60-х годов прошлого века и попытались сравнить железный занавес того времени с нынешним технологическим суверенитетом. Смотрите на YouTube и на VK (80 минут).
Media is too big
VIEW IN TELEGRAM
Где наши деньги (2024) от Владимира Зинкевича шедевром назвать нельзя, но как полу-пародия сразу на Lock, Stock and Two Smoking Barrels (1998) и The Usual Suspects (1995) — вполне годится. Я посмотрел с удовольствием, несмотря на недостоверность многих персонажей и местами откровенно бестолковый сюжет. А может быть это просто ностальгия — мы с режиссером почти одногодки.
I spent two days trying to switch from Sublime Text to NeoVim with NvChad. Epic fail. I’m back to Sublime. The main issue is that Nvim feels like a completely isolated subsystem—it’s not integrated with macOS at all. The keybindings are different, file management is different, and window management is a mess. It might work on Ubuntu, but it’s definitely not made for Mac. Bye bye, Nvim!
Why do our employers need unit and integration tests? Because they protect their investments. They’re the warranty we offer for the code we write. Check out the blog post I just published on this: Write Unit Tests, Don’t Waste Our Money!
In 2016, I gave a talk at JEEConf in Kyiv about the Object-Relational Mapping (ORM) design pattern—which, in reality, is an anti-pattern we should avoid. Before that, I had written a blog post on the same issue and even devoted a section to it in Elegant Objects (Volume 2). The talk is still highly relevant—you can watch it on YouTube (in English).
GitHub Copilot sucks at code reviews. CodeRabbit nails them. We've used it across a few repos, and its pull request feedback is consistently useful. Plus, it’s almost free. The pull request on the picture is this one: objectionary/eo#4223.